package Cooperado;

import java.util.Date;

import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.DiscriminatorValue;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToOne;

import Condutor.Condutor;
import Endereco.Endereco;
import PessoaJuridica.PessoaJuridica;
import Veiculo.Veiculo;

@Entity
@DiscriminatorValue("5")
public class Cooperado extends PessoaJuridica {

	private int alvaraLicenca;
	private Date ValCadDer;
	private int PIS;
	
	@OneToOne (fetch= FetchType.EAGER, cascade = {CascadeType.MERGE,CascadeType.PERSIST})
	@JoinColumn
	private Condutor condutor;
	
	
	public Cooperado() {
		super();
	}
	public Cooperado(String nomePessoa, int matricula, Date dataCadastro,
			Endereco endereco, String razaoSocial, int cNPJ,
			int inscricaoEstadual, int inscricaoMunicipal, int alvaraLicenca,
			Date valCadDer, int pIS) 
	{
		super(nomePessoa, matricula, dataCadastro, endereco, razaoSocial, cNPJ,
				inscricaoEstadual, inscricaoMunicipal);
		
		this.alvaraLicenca = alvaraLicenca;
		ValCadDer = valCadDer;
		PIS = pIS;
	}
	
	public Cooperado(String nomePessoa, int matricula, Date dataCadastro,
			Endereco endereco, String razaoSocial, int cNPJ,
			int inscricaoEstadual, int inscricaoMunicipal, int alvaraLicenca,
			Date valCadDer, int pIS, Condutor condutor) 
	{
		super(nomePessoa, matricula, dataCadastro, endereco, razaoSocial, cNPJ,
				inscricaoEstadual, inscricaoMunicipal);
		
		this.alvaraLicenca = alvaraLicenca;
		ValCadDer = valCadDer;
		PIS = pIS;
		this.condutor= condutor;
	}
	
	
	
	public int getAlvaraLicenca() {
		return alvaraLicenca;
	}
	public void setAlvaraLicenca(int alvaraLicenca) {
		this.alvaraLicenca = alvaraLicenca;
	}
	public Date getValCadDer() {
		return ValCadDer;
	}
	public void setValCadDer(Date valCadDer) {
		ValCadDer = valCadDer;
	}
	public int getPIS() {
		return PIS;
	}
	public void setPIS(int pIS) {
		PIS = pIS;
	}
	
	public Condutor getCondutor() {
		return condutor;
	}
	public void setCondutor(Condutor condutor) {
		this.condutor = condutor;
	}
	
	
	
	
}
